﻿#define  _CRT_SECURE_NO_WARNINGS 1
/*
* Name:test_4_4
* Purpose:读入用户输入的整数并按八进制（基数为8）显示出来
* Author:zzr
*/

#include <stdio.h>

int main(void)
{
	/*
		int number;

		printf("Enter a number between 0 and 32767:");
		scanf("%d", &number);

		此题不会，仅能理解到这一步，printf("In octal,your number is:%05d", number % 8);十，八，十六进制
		转化不会，需要学习！
	*/

	int number, r1, r2, r3, r4, r5;
	printf("Enter a number between 0 and 32767: ");
	scanf("%d", &number);

	r5 = number % 8;
	number = number / 8;
	r4 = number % 8;
	number = number / 8;
	r3 = number % 8;
	number = number / 8;
	r2 = number % 8;
	number = number / 8;
	r1 = number % 8;
	number = number / 8;
	
	printf("In octal,your number is %d%d%d%d%d", r1, r2, r3, r4, r5);

	return 0;
}
/*
把十进制数转换为八进制数，可以采用除8取余法。
具体步骤如下：
1. 将十进制数除以8，得到商和余数。
2. 将商继续除以8，得到新的商和余数。
3. 重复上述步骤，直到商为0为止。
4. 将所有的余数从右到左排列，即可得到八进制数。
*/